package com.zhiche.lisa.lspm.dao.model.sys;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author liuanshun
 * @since 2018-09-28
 */
@TableName("sys_user")
public class User extends Model<User> {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
	@TableId(value="id", type= IdType.AUTO)
	private Integer id;
    /**
     * 编码
     */
	private String code;
    /**
     * 姓名
     */
	private String name;
    /**
     * 手机号
     */
	private String mobile;
    /**
     * 电子邮箱
     */
	private String email;
    /**
     * 性别
     */
	private Integer gender;
    /**
     * 身份证号
     */
	@TableField("id_number")
	private String idNumber;
    /**
     * 出生日期
     */
	private Date birthday;
    /**
     * 所属部门
     */
	private String department;
    /**
     * 上级领导
     */
	private String leader;
    /**
     * 驾照类型(A1,A2,B1,B2,C)
     */
	@TableField("license_type")
	private String licenseType;
    /**
     * 驾照证号
     */
	@TableField("driving_license")
	private String drivingLicense;
    /**
     * 初次领证日期
     */
	@TableField("first_license_date")
	private Date firstLicenseDate;
    /**
     * 驾驶证有效期
     */
	@TableField("Invalid_license_date")
	private Date invalidLicenseDate;
    /**
     * 意外险有效期
     */
	@TableField("Invalid_insurance_date")
	private Date invalidInsuranceDate;
    /**
     * 账号ID
     */
	@TableField("account_id")
	private String accountId;
    /**
     * 状态(1:正常,0:失效)
     */
	private Integer status;
    /**
     * 备注
     */
	private String remark;
    /**
     * 创建人
     */
	@TableField("create_user")
	private String createUser;
    /**
     * 修改人
     */
	@TableField("modified_user")
	private String modifiedUser;
    /**
     * 创建时间
     */
	@TableField("gmt_create")
	private Date gmtCreate;
    /**
     * 修改时间
     */
	@TableField("gmt_modified")
	private Date gmtModified;

	/**
	 * 承运商id
	 */
	@TableField("lsp_id")
	private Long lspId;

	/**
	 * 微信登录openId
	 */
	@TableField("open_id")
	private String openId;
	/**
	 * 微信登录code
	 */
	@TableField(exist = false)
	private String openCode;

	public String getOpenCode() {
		return openCode;
	}

	public void setOpenCode(String openCode) {
		this.openCode = openCode;
	}

	public String getOpenId() {
		return openId;
	}

	public void setOpenId(String openId) {
		this.openId = openId;
	}

	public Long getLspId() {
		return lspId;
	}

	public void setLspId(Long lspId) {
		this.lspId = lspId;
	}

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getMobile() {
		return mobile;
	}

	public void setMobile(String mobile) {
		this.mobile = mobile;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public Integer getGender() {
		return gender;
	}

	public void setGender(Integer gender) {
		this.gender = gender;
	}

	public String getIdNumber() {
		return idNumber;
	}

	public void setIdNumber(String idNumber) {
		this.idNumber = idNumber;
	}

	public Date getBirthday() {
		return birthday;
	}

	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}

	public String getDepartment() {
		return department;
	}

	public void setDepartment(String department) {
		this.department = department;
	}

	public String getLeader() {
		return leader;
	}

	public void setLeader(String leader) {
		this.leader = leader;
	}

	public String getLicenseType() {
		return licenseType;
	}

	public void setLicenseType(String licenseType) {
		this.licenseType = licenseType;
	}

	public String getDrivingLicense() {
		return drivingLicense;
	}

	public void setDrivingLicense(String drivingLicense) {
		this.drivingLicense = drivingLicense;
	}

	public Date getFirstLicenseDate() {
		return firstLicenseDate;
	}

	public void setFirstLicenseDate(Date firstLicenseDate) {
		this.firstLicenseDate = firstLicenseDate;
	}

	public Date getInvalidLicenseDate() {
		return invalidLicenseDate;
	}

	public void setInvalidLicenseDate(Date invalidLicenseDate) {
		this.invalidLicenseDate = invalidLicenseDate;
	}

	public Date getInvalidInsuranceDate() {
		return invalidInsuranceDate;
	}

	public void setInvalidInsuranceDate(Date invalidInsuranceDate) {
		this.invalidInsuranceDate = invalidInsuranceDate;
	}

	public String getAccountId() {
		return accountId;
	}

	public void setAccountId(String accountId) {
		this.accountId = accountId;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getCreateUser() {
		return createUser;
	}

	public void setCreateUser(String createUser) {
		this.createUser = createUser;
	}

	public String getModifiedUser() {
		return modifiedUser;
	}

	public void setModifiedUser(String modifiedUser) {
		this.modifiedUser = modifiedUser;
	}

	public Date getGmtCreate() {
		return gmtCreate;
	}

	public void setGmtCreate(Date gmtCreate) {
		this.gmtCreate = gmtCreate;
	}

	public Date getGmtModified() {
		return gmtModified;
	}

	public void setGmtModified(Date gmtModified) {
		this.gmtModified = gmtModified;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "User{" +
			", id=" + id +
			", code=" + code +
			", name=" + name +
			", mobile=" + mobile +
			", email=" + email +
			", gender=" + gender +
			", idNumber=" + idNumber +
			", birthday=" + birthday +
			", department=" + department +
			", leader=" + leader +
			", licenseType=" + licenseType +
			", drivingLicense=" + drivingLicense +
			", firstLicenseDate=" + firstLicenseDate +
			", InvalidLicenseDate=" + invalidLicenseDate +
			", InvalidInsuranceDate=" + invalidLicenseDate +
			", accountId=" + accountId +
			", status=" + status +
			", remark=" + remark +
			", createUser=" + createUser +
			", modifiedUser=" + modifiedUser +
			", gmtCreate=" + gmtCreate +
			", gmtModified=" + gmtModified +
			"}";
	}
}
